home *** CD-ROM | disk | FTP | other *** search
- """ ***DANGEROUS***
- script to remove
- all results of a
- build process.
-
- ***Don't***
- run this if you are
- ***not***
- building Python
- from the source
- !!!
- """
-
- import macfs
- import os
- import sys
- import re
-
- sweepfiletypes = [
- 'APPL', # applications
- 'Atmp', # applet template
- 'shlb', # shared libs
- 'MPSY', # SYM and xSYM files
- 'PYC ', # .pyc files
- ]
-
- sweepfolderre = re.compile(r"(.*) Data$")
-
-
- def remove(top):
- if os.path.isdir(top):
- for name in os.listdir(top):
- path = os.path.join(top, name)
- remove(path)
- os.remove(top)
-
-
- def walk(top):
- if os.path.isdir(top):
- m = sweepfolderre.match(top)
- if m and os.path.exists(m.group(1) + ".prj"):
- print "removing folder:", top
- remove(top)
- else:
- for name in os.listdir(top):
- path = os.path.join(top, name)
- walk(path)
- else:
- fss = macfs.FSSpec(top)
- cr, tp = fss.GetCreatorType()
- if tp in sweepfiletypes and top <> sys.executable:
- print "removing file: ", top
- remove(top)
-
-
- fss, ok = macfs.GetDirectory("Please locate the Python home directory")
- if ok:
- walk(fss.as_pathname())
- sys.exit(1) # so we see the results
-